Make treeview cursor handling a bit more robust
authorMatthias Clasen <mclasen@redhat.com>
Wed, 30 Oct 2013 17:57:33 +0000 (13:57 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 30 Oct 2013 18:08:28 +0000 (14:08 -0400)
Clearing the model in a GtkTreeSelection::changed handler was
crashing. While it is not a 100% kosher thing to do, lets be
more robust here.

gtk/gtktreeview.c

index f141e2f7b083a8642536e910c3fa7d52e419f6e1..2ee1bb74b629148d15b178a0705f71acc23d7b6b 100644 (file)
@@ -13163,7 +13163,8 @@ gtk_tree_view_real_set_cursor (GtkTreeView     *tree_view,
        */
       _gtk_tree_view_find_node (tree_view, path, &new_tree, &new_node);
 
-      if (tree_view->priv->cursor_node != new_node)
+      if (tree_view->priv->cursor_node == NULL ||
+          tree_view->priv->cursor_node != new_node)
         return;
 
       if (flags & CLAMP_NODE)